7bebe355a9fc32bea05c05f5906e795abb175049,src/main/org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java,StaticTypeCheckingSupport,getDistance,#ClassNode#ClassNode#,690
Before Change
static int getDistance(final ClassNode receiver, final ClassNode compare) {
if (receiver.equals(compare)||receiver == UNKNOWN_PARAMETER_TYPE) return 0;
if (compare.isInterface() && receiver.implementsInterface(compare)) {
int dist = getMaximumInterfaceDistance(receiver, compare);
return dist;
}
After Change
if (receiver.equals(ref) || receiver == UNKNOWN_PARAMETER_TYPE) {
break;
}
if (ref.isInterface() && receiver.implementsInterface(ref)) {
dist += getMaximumInterfaceDistance(receiver, ref);
break;
}